<template>
  <div class="main">
    <div class="title">
      <a class="active" href="/login">登录</a>
      <span>·</span>
      <a href="/register">注册</a>
    </div>

    <div class="sign-up-container">
      <el-form ref="userForm" :model="user">

        <el-form-item :rules="[{ required: true, message: '请输入手机号码', trigger: 'blur' },{validator: checkPhone, trigger: 'blur'}]" class="input-prepend restyle" prop="mobile">
          <div >
            <el-input v-model="user.mobile" type="text" placeholder="手机号"/>
            <i class="iconfont icon-phone" />
          </div>
        </el-form-item>

        <el-form-item :rules="[{ required: true, message: '请输入密码', trigger: 'blur' }]" class="input-prepend" prop="password">
          <div>
            <el-input v-model="user.password" type="password" placeholder="密码"/>
            <i class="iconfont icon-password"/>
          </div>
        </el-form-item>

        <div class="btn">
          <input type="button" class="sign-in-button" value="登录" @click="submitLogin()">
        </div>
      </el-form>
      <!-- 更多登录方式 -->
      <div class="more-sign">
        <h6>社交帐号登录</h6>
        <ul>
          <li><a id="weixin" class="weixin" target="_blank" href="http://localhost:8160/ucenterservice/wx/login"><i class="iconfont icon-weixin"/></a></li>
          <li><a id="qq" class="qq" target="_blank" href="#"><i class="iconfont icon-qq"/></a></li>
        </ul>
      </div>
    </div>

  </div>
</template>

<script>
import '~/assets/css/sign.css'
import '~/assets/css/iconfont.css'
import loginApi from '@/api/login'
import cookie from 'js-cookie'

export default {
  // 应用布局
  layout: 'sign',

  data() {
    return {
      // /用于封装登陆手机号和密码对象
      user: {
        mobile: '',
        password: ''
      },
      loginInfo: {}
    }
  },

  methods: {
    // 登陆的方法
    submitLogin() {
      // 第一步 调用接口进行登录 返回token字符串
      loginApi.subjectLoginInfo(this.user).then(response => {
        // 第二步 获取到token字符串放到cookie中  第一个参数是cookie的名字，第二个参数是token值，第三个参数是作用范围
        cookie.set('guli_token', response.data.data.token, { domain: 'localhost' })

        // 第三步 创建拦截器

        // 第四步 调用接口 根据token获取用户信息
        loginApi.getLoginUserInfo().then(response => {
          // 获取返回的用户信息 放到cookie中  token获取的用户信息是json字符串 不是json对象 得把它转化为json对象存到cookie中
          cookie.set('guli_ucenter', JSON.stringify(response.data.data.userInfo), { domain: 'localhost' })
          // 跳转页面
          this.$router.push({ path: '/' })
        })
      })
    },

    checkPhone(rule, value, callback) {
      // debugger
      if (!(/^1[34578]\d{9}$/.test(value))) {
        return callback(new Error('手机号码格式不正确'))
      }
      return callback()
    }
  }
}
</script>
<style>
   .el-form-item__error{
    z-index: 9999999;
  }
</style>
